package org.dromara.authcode.domain;

import lombok.Getter;

/**
 * 通用处理状态
 *  处理状态 2.过期；1，有效；0，无效；
 * @author Miles Meng
 * @version V1.0
 * @date 2025-05-07
 */
@Getter
public enum StatusCode {
    /**
     * 过期
     */
    E("过期", 2),
    /**
     * 有效
     */
    T("有效", 1),
    /**
     * 无效
     */
    F("无效", 0);

    private final String name;
    private final long statusCode;

    StatusCode(String name, long statusCode) {
        this.name = name;
        this.statusCode = statusCode;
    }

    /**
     * 通过statusCode获取
     *
     * @param statusCode 代码
     * @return 对象
     */
    public static StatusCode getByCode(long statusCode) {
        for (StatusCode enumObj : values()) {
            if (enumObj.statusCode == statusCode) {
                return enumObj;
            }
        }
        return null;
    }

}
